/*
 * Copyright (c) 2017-2019, Lindenis Tech. Ltd.
 * All rights reserved.
 *
 * File:
 *
 * Description:
 *
 * Author:
 *      xiaoshujun@lindeni.com
 *
 * Create Date:
 *      2019/08/27
 *
 * History:
 *
 */

#ifndef __FF_SINK_H__
#define __FF_SINK_H__

#ifdef __cplusplus
extern "C" {
#endif

#include "lindsink.h"
#include "lindcomponent.h"

typedef long ffsink_handle;

ffsink_handle ffsink_create();
void ffsink_destroy(ffsink_handle sink_handle);
int  ffsink_init(ffsink_handle sink_handle, ffsink_config_t * p_config);
int  ffsink_deinit(ffsink_handle sink_handle);

/**
 * @Deprecated, use 'ffsink_write2()'
 */
int  ffsink_write(ffsink_handle sink_handle, av_frame_t * p_frame);

int  ffsink_write2(ffsink_handle sink_handle, av_frame2_t * p_frame);

#ifdef __cplusplus
}
#endif

#endif  // __FF_SINK_H__

